libbpf: fix readelf output parsing on powerpc with recent binutils
authorAurelien Jarno <aurelien@aurel32.net>
Sun, 1 Dec 2019 19:35:55 +0000 (20:35 +0100)
committerSalvatore Bonaccorso <carnil@debian.org>
Sun, 19 Jan 2020 09:22:58 +0000 (09:22 +0000)
commitd318ae03f89d5cd8fec15e43f7f19a7d4bafaac1
treedb276800537942f6681d45d38ddf3f52f6b09e5f
parent581377b41d5a80ee07493f3a87583819a19e8adc
libbpf: fix readelf output parsing on powerpc with recent binutils

Origin: https://lore.kernel.org/patchwork/patch/1161149/

On powerpc with recent versions of binutils, readelf outputs an extra
field when dumping the symbols of an object file. For example:

    35: 0000000000000838    96 FUNC    LOCAL  DEFAULT [<localentry>: 8]     1 btf_is_struct

The extra "[<localentry>: 8]" prevents the GLOBAL_SYM_COUNT variable to
be computed correctly and causes the checkabi target to fail.

Fix that by looking for the symbol name in the last field instead of the
8th one. This way it should also cope with future extra fields.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Gbp-Pq: Topic bugfix/ppc64el
Gbp-Pq: Name libbpf-fix-readelf-output-parsing-on-powerpc-with-re.patch
tools/lib/bpf/Makefile